This invention relates to the field of human-computer interfaces, specifically those relating to multidimensional displays and navigation, interaction with multidimensional environments and objects, and methods of intuitively interfacing therewith.
Computing technology has seen a many-fold increase in capability in recent years. Processors work at ever higher rates; memories are ever larger and always faster; mass storage is larger and cheaper every year. Computers now are essential elements in many aspects of life, and are often used to present three dimensional worlds to users, in everything from games to scientific visualization.
The interface between the user and the computer has not seen the same rate of change. Screen windows, keyboard, monitor, and mouse are the standard, and have seen little change since their introduction. Many computers are purchased with great study as to processor speed, memory size, and disk space. Often, little thought is given to the human-computer interface, although most of the user's experience with the computer will be dominated by the interface (rarely does a user spend significant time waiting for a computer to calculate, while every interaction must use the human-computer interface).
As computers continue to increase in capability, new interface methods are needed to fully utilize new modes of human-computer communication. Preferably, such new methods can build on interface methods learned by users in real-world situations and in two-dimensional computer interfaces. Specifically, users have become accustomed to two-dimensional computer interfaces, with control panels, menus, and buttons. Users are also accustomed to three-dimensional interfaces in real-world situations, visual and tactile depth perception aid in finding and manipulating such controls. For example, the controls of a car radio are always in some understandable relationship to the usual position of the driver. Such simplistic relationship can be undesirable in a three-dimensional computer environment, however, where the user can desire that controls be available during three-dimensional navigation free of the requirement of experiencing the environment through a windshield.
Interfaces using three dimensions allow for a more natural human interface experience compared with contemporary two-dimensional computer interfaces. A few three-dimensional display interface standards exist, for example Openinventor, OpenGL, and direct3D. See “OpenGL® Programming Guide, Third Edition”, OpenGL Architecture Review Board. At least one haptic interface standard exists, Ghost. See the webpage at sensable.com/products/ghost.htm. These standards, while suitable for three-dimensional display and interaction, do not allow the user to apply experience gained in real-world controls, and in two-dimensional interfaces. Attempts to provide intuitive, familiar controls in a three-dimensional interface generally either require explicit transitions out of the three-dimensional interface (sacrificing the intuitiveness of the interface) or encounter significant problems related to depth perception in three-dimensional spaces (the user has difficulty finding the controls in the depth of the three-dimensional space).
Fuller realization of the entertainment and productivity benefits possible from computer technology requires improved interfaces. Accordingly, there is a need for improved methods of human-computer interfacing that offer more intuitive navigation and control of the computer, providing the user an intuitive interface incorporating familiar control concepts with three-dimensional spaces.